/*
  将下面异步代码使用 Promise 的方法改进
  尽量用看上去像同步代码的方式
*/
setTimeout(function () {
  var a = 'hello'
  setTimeout(function () {
    var b = 'lagou'
    setTimeout(function () {
      var c = 'I ♥ U'
      console.log(a + b +c)
    }, 10)
  }, 10)
}, 10)
/**
 * 改进代码为
 */
const promise = new Promise((resolve, reject) => {
  return setTimeout(() => {
    var a = 'hello';
    resolve(a);
  },10);
}).then((value) => {
  setTimeout(() => {
    var b = 'lagou';
    Promise.resolve({
      then: function (onFulfilled, onRejected) {
        setTimeout(() => {
          var c = 'I ♥ U'
          onFulfilled(value + b + c);
        },10);
      }
    }).then(value => {console.log(value)});
  },10);
})

